# -*- coding: utf-8 -*-
# @Time : 2025/2/20 16:02
# @Author : zrx
import xlrd
from django.core.management import BaseCommand

from common.models.base_data import GroupCustomerInfo
from common.models.system import Users

group_status_dict = {
    '在网': '1',
    '潜在': '2',
    '离网': '3'
}

group_actual_level_dict = {
    'A1高值客户': '1',
    'A2战略客户': '2',
    'B1示范客户': '3',
    'B2潜力客户': '4',
    'C1规模客户': '5',
    'C2规模客户': '6',
    'D1聚类集团': '7',
}

industry_category_dict = {
    '采矿业': '1',
    '电力、燃气及水的生产和供应业': '2',
    '房地产业': '3',
    '公共管理、社会保障和社会组织': '4',
    '环境和公共设施管理业': '5',
    '建筑业': '6',
    '交通运输、仓储和邮政业': '7',
    '教育': '8',
    '金融业': '9',
    '居民服务、修理和其他服务业': '10',
    '科学研究和技术服务业': '11',
    '农、林、牧、渔业': '12',
    '批发和零售业': '13',
    '其他': '14',
    '卫生、社会保障和社会福利业': '15',
    '文化、体育和娱乐业': '16',
    '信息传输、软件和信息技术服务业': '17',
    '制造业': '18',
    '住宿和餐饮业': '19',
    '租赁和商务服务业': '20',
    '国防': '21',
}

dept_dict = {
    '东营': 1,
    '政企中心': 2,
    '东城': 3,
    '西城': 4,
    '广饶': 5,
    '河口': 6,
    '利津': 7,
    '垦利': 8
}


class Command(BaseCommand):
    def __init__(self, *args, **kwargs):
        super(Command).__init__(*args, **kwargs)
        self.sheet = None

    def handle(self, *args, **kwargs):
        file_path = r'D:\work\cai\docs\0217.xlsx'
        workbook = xlrd.open_workbook(file_path)
        self.sheet = workbook.sheets()[0]

        for i in range(2, self.sheet.nrows):
            if self.value(i, 7):
                user = Users.objects.filter(username=self.value(i, 7).split('|')[-1]).first()
                user_id = user.id if user else None
            else:
                user_id = None
            GroupCustomerInfo.objects.create(
                creator_id=user_id,
                dept_belong_id=dept_dict.get(self.value(i, 2)),
                group_id=self.value(i, 0),
                group_name=self.value(i, 1),
                dept_id=dept_dict.get(self.value(i, 2)),
                industry_category=industry_category_dict.get(self.value(i, 3)),
                group_status=group_status_dict.get(self.value(i, 4)),
                group_actual_level=group_actual_level_dict.get(self.value(i, 5)),
                group_address=self.value(i, 6),
                network_user_count=self.value(i, 8).split('.')[0],
                is_strategic_customer=True if self.value(i, 9) == '战略客户' else False,
                is_value_customer=True if self.value(i, 10) == '价值客户' else False,
            )
            print(self.value(i, 0), 'success')
            # return

    def value(self, row, col):
        value = self.sheet.cell(row, col).value
        return str(value).strip()
